const mysql = require('mysql')

// 连接池
const pool = mysql.createPool({
    host: 'localhost',
    user: 'root',
    password: '',
    database: 'zhixin',
    timezone: '08:00'
})


// 执行sql语句
function doSQL(sql, params = []) {
    // console.log(sql)
    // console.log(params)
    return new Promise((resolve, reject) => {
        pool.getConnection(function (error, connection) {
            // 在引用的地方抛出错误
            if (error) {
                reject(error)
            } else {
                // 执行sql语句
                // results 结果集
                connection.query(sql, params, (err, results, fields) => {
                    console.log(err)
                    // 数据返回
                    if (err) {
                        reject(err)
                    } else {
                        resolve(results)
                    }
                    connection.release()
                    // resolve({ err, results, fields })
                })
            }
        })
    })
}

// 统一处理返回数据
function doResponse(params) {
    const res = {
        success: params.success,
        errorCode: params.errorCode || 0,
        message: params.message || '操作成功',
        data: params.data
    }
    if (params.total) {
        res.total = params.total
    }
    return JSON.stringify(res)
}

module.exports = {
    doSQL,
    doResponse
}